/**
 * 用户详情对话框（可用于添加和修改对话框）
 */
var BannerInfoDlg = {
    width: '650px',
    height: '400px',
    currentLayerIndex: -1,
    cache: "",
    InfoData: {}
};

/**
 * 初始化新增弹出框
 */
BannerInfoDlg.init = function () {
    this.cache = $("#bannerDialog").html();
    $("#bannerDialog").html('');
};

/**
 * 清除数据
 */
BannerInfoDlg.clearData = function () {
    this.InfoData = {};
};

/**
 * 关闭此对话框
 */
BannerInfoDlg.close = function () {
    layer.close(this.currentLayerIndex);
};

/**
 * 新增打开模态框调用事件
 */
BannerInfoDlg.renderAdd = function () {
    //初始化icheck选中样式
    initICheck();
    initDatePicker();
};
/**
 * 新增
 */
BannerInfoDlg.addSubmit = function () {

    this.clearData();
    this.InfoData = getFormJson("#frmMain");
    if(this.InfoData.couponSum==="") this.InfoData.couponSum=null;
    // 提交信息
    var ajax = new $ax(Feng.ctxPath+"/banner/save", function (data) {
        Feng.success("添加成功!");
        BannerTable.me.refresh();
    }, function (data) {
        Feng.error("添加失败!" + data.responseJSON.message + "!");
    });
    ajax.set(this.InfoData);
    ajax.start();
};

/**
 * 编辑
 */
BannerInfoDlg.load = function (id) {
    var ajax = new $ax(Feng.ctxPath+"/banner/getById", function(data){
        Feng.log("banner息查询成功");
        if (data.success){
            BannerInfoDlg.initUploadImg();
            for (var i in data.obj){
                //判断Id与name是否相同
                if($("#"+i).attr("name")==i){
                    $("#"+i).val(data.obj[i]);
                }
            }
        }
    },function(data){
        Feng.error("加载信息失败!");
    });
    ajax.data={id:id};
    ajax.start();
};


/**
 * 提交修改
 */
BannerInfoDlg.editSubmit = function (index) {

    this.clearData();
    this.InfoData = getFormJson("#frmMain");
    if(this.InfoData.couponSum==="") this.InfoData.couponSum=null;

    //提交信息
    var ajax = new $ax(Feng.ctxPath + "/banner/update", function (data) {
        if (data.success === true) {
            Feng.success("编辑成功!");
            layer.close(index);
            BannerTable.me.refresh();
        } else if (data.code === 2) {
            Feng.error(data.msg);
        } else {
            Feng.error("编辑失败!");
        }
    }, function (data) {
        Feng.error("修改失败!" + data.responseJSON.message + "!");
    });
    ajax.set(this.InfoData);
    ajax.start();
};

//获取上传图片名称
BannerInfoDlg.getUploadImgName = function () {
    var imgName = {};
    $("#img_list .btn-close").each(function (index) {
        var pictureName = $(this).attr("data-name");
        var index = parseInt(index)+1;
        imgName["picture"+index] = pictureName;
    });
    return imgName;
};

//图片上传
BannerInfoDlg.initUploadImg = function () {
    $("#file").uploadify({
        height        : 30,
        swf           : Feng.ctxPath+'/js/assets/lib/uploadify/uploadify.swf?ver='+Math.random(),
        uploader      : Feng.ctxPath+'/file/upload?ver='+Math.random(),
        width         : 120,
        fileObjName   : 'file',
        fileTypeExts: '*.jpg;*.jpeg;*.png;', //文件后缀限制 默认：'*.
        fileSizeLimit: '3MB', //文件大小限制 0为无限制 默认KB
        queueSizeLimit :1,
        buttonText    : '图片上传', //按钮文字
        removeCompleted: true, //上传成功后的文件，是否在队列中自动删除
        overrideEvents: ['onSelectError','onSelect', 'onUploadSuccess', 'onUploadError'],//重写事件
        //选择关闭事件
        // onDialogClose:function () {},
        //返回一个错误，选择文件的时候触发          
        'onSelectError': function (file, errorCode, errorMsg) {
            var msgText = "";
            switch (errorCode) {
                case SWFUpload.QUEUE_ERROR.QUEUE_LIMIT_EXCEEDED:
                    //this.queueData.errorMsg = "每次最多上传 " + this.settings.queueSizeLimit + "个文件";
                    msgText += "每次最多上传 " + this.settings.queueSizeLimit + "个文件";
                    break;
                case SWFUpload.QUEUE_ERROR.FILE_EXCEEDS_SIZE_LIMIT:
                    msgText += "文件大小超过限制" + this.settings.fileSizeLimit + "";
                    break;
                case SWFUpload.QUEUE_ERROR.ZERO_BYTE_FILE:
                    msgText += "文件大小为0";
                    break;
                case SWFUpload.QUEUE_ERROR.INVALID_FILETYPE:
                    msgText += "文件格式不正确，仅限 " + this.settings.fileTypeExts;
                    break;
                default:
                    msgText += "错误代码：" + errorCode + "\n" + errorMsg;
            }
            Feng.error(msgText);
        },

        // 当选中文件时的回调函数
        'onSelect': function (file) {
            //显示上传状态
            $("#img_list").append("<div id='"+file.id+"_item' class='item col-md-2 thumbnail'>\n" +
                "<img src=\"../../superui/content/ui/img/loading-spinner-blue.gif\"/>\n" +
                "<span class=\"scale\">0%</span>\n" +
                "<a class=\"btn-close glyphicon glyphicon-remove\"></a>\n" +
                "</div>")
        },

        // 当文件上传中的回调方法
        'onUploadProgress': function (file, bytesUploaded, bytesTotal, totalBytesUploaded, totalBytesTotal) {
            // 设置进度条级显示的百分比
            var scale = Math.floor(bytesUploaded / bytesTotal) * 100;
            $("#"+file.id+"_item").children("span").html(scale + "%");
        },

        //检测FLASH失败调用
        'onFallback': function () {
            alert("您未安装FLASH控件，无法上传图片！请安装FLASH控件后再试。");
        },

        ////文件上传成功后的回掉方法
        'onUploadSuccess':function (file, data, response) {
            console.log(data);
            var data = JSON.parse(data);
            if (data.code === 2){
                Feng.error(data.msg);
                return;
            }
            //清除加载进度比
            $("#"+file.id+"_item").children("span").remove();
            $("#"+file.id+"_item").children("img").remove();
            $("#"+file.id+"_item").children(".btn-close").attr("data-name",data.obj.fileName);
            // $("#"+file.id+"_item").append("<input type='hidden' name='' data-name='"+data.obj.fileName+"'></input>");
            $("#imgName").val(data.obj.fileName);
            //显示图片
            $("#"+file.id+"_item").attr("style","background-color: #ffffff;background-image:url({0}/file/getImage/{1})".format(Feng.ctxPath,data.obj.fileName));
            BannerInfoDlg.displayUploadBtn();
        },

        //文件上传出错时触发，参数由服务端程序返回。
        'onUploadError': function (file, errorCode, errorMsg, errorString) {
            Feng.error("上传出现异常，请重新上传" + errorString);
            $("#"+file.id+"_item").remove();
        }

    });
};

//显示或隐藏上传按钮
BannerInfoDlg.displayUploadBtn = function () {
    var length = $("#img_list .item").length;
    if(length==1) $("#file").hide();
    else $("#file").show();
};

//删除图片
$(document).on("click",".btn-close",function () {
    $(this).parent().remove();
    BannerInfoDlg.displayUploadBtn();

});
